1. Field of the Invention
This invention relates to the art of dynamic configuration of server content for delivery to a client or terminal device, such as a WAP-enabled telephone or personal digital assistant, over a computer network, such as the Internet. The invention relates especially to the arts of automatically grooming or tailoring the content delivered to a microbrowser having limited resources and capabilities such that only content preferred by the user or compatible with the microbrowser is delivered.
2. Description of the Related Art
The proliferation of e-commerce on the World Wide Web (WWW) has offered immense potential for revenue generation through advertisements. The web offers unprecedented opportunities for personalized advertisements, and there has been stunning innovations in customized advertising over the last few years.
Additionally, the “web-enablement” of various handheld terminals including wireless telephones (“cell phones” and PCS phones) as well as wirelesss-networked personal digital assistants (PDA) have added to the array of potential “browsing” devices which may interact with a web server and its content. The number of users of such devices is steadily increasing, so the demand for web site content which is targeted for these devices is also expected to continue to grow.
Turning to FIG. 1, the well-known arrangement of client browser computers (1), web servers (5) and Advertising servers (“Ad Server”) (6) are shown. The client browser computer (1) typically is equipped with software such as a web browser and a communications protocol stack such that it may connect to and communicate via the World Wide Web (3). Client browser computers include conventional personal computers such as IBM-compatible personal computers and Apple iMac™ computers.
Other “microbrowser” devices (9), such as web-enabled wireless telephones and PDAs, WebTV terminals and Internet appliances, may also access information from the Web Server (5) and Ad Server (6).
A web server (5) is usually provided with one or more data files of web page content such that they may be delivered to a client browser computer upon request, such as by hypertext transfer protocol (HTTP). The web server is also communicably connected to the World Wide Web (3) or another suitable computer network. IBM's WebSphere™ enterprise server software combined with a suitable networking computing platform, such as a personal computer running IBM's AIX™ operating system, is an example of one such web server (5).
The microbrowser devices (9), though, typically have lower performance and considerable resource restrictions when compared to computer browsers (1), including much less memory, much smaller display area (and fewer colors in many cases), much slower microprocessor, as well as considerably slow transmission rate between the network (3) and the devices (8, 2).
For example, a Web Server may easily deliver a component to a web page over a dial-up modem connection or cable modem (2) from a standard web browser (1) on a personal computer having a 750 MHz processor, 128 MByte or more of memory, a full 1024 by 768 pixel, 24-bit color palette display over a 56 kbit/sec or higher data link using a common protocol such as Hyper Text Transfer Protocol (HTTP). The web pages themselves may be encoded in Hyper Text Markup Language (HTML).
By contrast, the microbrowser device may only have a 100 MHz processor, 32 MByte of memory, a data link of a few kilobits per second, and may run a protocol such as Wireless Application Protocol (WAP) or i-Mode. Due to these restrictions in resources, often on the scale of one-tenth the capabilities of a standard web browser, the special protocols (WAP, i-Mode, etc.) have been developed to minimize the number of communication messages or “handshakes” which occur during a web page access. This supports effective use over the lower communications bandwidth typically available to such devices, as well as reduces the resource requirements (processing bandwidth, memory, etc.) needed on the devices to some degree.
WAP and protocols like it are intended for use by devices such as handheld digital wireless mobile phones, pagers, two-way radios, “smartphones” and communicators, although it could be applied to “higher end” devices such as personal computer or laptop computer-based web browsers. WAP itself is defined to be interoperable with most wireless networks, including cellular digital packet data (CDPD), code-division multiple access (CDMA), global system for mobile communications (GSM), time division multiple access (TDMA), and many others. These protocols are generally operating-system independent or can be used with a wide variety of operating systems which are common in such devices, including PalmOS, EPOC, Windows CE, FLEXOS, OS/9, JavaOS, and others.
To further enhance the “wireless” web browsing experience, many web servers and advertising (“ad”) servers maintain two separate sets of content: a “normal” set in HTML for normal browsers, and an “optimized” set in Wireless Markup Language (WML) for wireless browsers. HTML, HTTP, WML, WAP and i-Mode are well known in the art.
Some web pages include advertisements, such as banner ads, which include information for a user to view regarding products or services being promoted by the sponsors of the web server or web page being viewed. Many online businesses including search engines, travel services, news services, etc., have become dependent on generation of revenue through advertising as many of these companies offer their “services” at not cost to the web “visitor”.
These “ads” are typically delivered by an Ad Server (6), which is also connected to the Internet or World Wide Web (3). In FIG. 2, the well-known process of merging ads (23) and web page contents (24) to be displayed on a portion of a client display (20) in a web browser frame (21) is shown.
The web browser frame (21) typically includes a set of navigation controls (22) such as Back and Forward buttons, as well as a Universal Resource Locator (URL) address selector. Displayed in the display frame of the web browser is the selected (“pointed to”) web page content (24), which is retrieved (26) from the web server (5) using a protocol such as HTTP.
An ad (23) located on the page is delivered typically from a separate server such as and Ad Server (6), through a common web page inclusion method in the code for the page content, such as a direct hyperlink (25) to the advertising object on the ad server (5), or a Hyper Text Markup Language (HTML) “include” statement. These ad objects are typically graphic image files, such as Graphic Interchange Format (GIF) or Joint Photographic Experts Group (JPEG), additional web page code such as HTML, or even audio or video clips such as “WAV” or “AVI” files.
The web browser software first retrieves a base web page from the web server, and then retrieves all the data items or objects which are referred to in the web page code, such as a graphic image or additional sections of HTML. Thus, what is displayed to the user after retrieving all of the referred to objects, is a combination of all the items included in the web page source code.
As processing capabilities, memory storage availability, and communications bandwidth are severely limited when serving a microbrowser, may web server or web site operators choose to only offer a subset in WML of their full “normal” content, in order to minimize upkeep and maintenance costs of the special WML content.
However, this may still produce an undesirable wireless web browsing experience for a microbrowser user. For example, a search engine web site may decide that, due to commercial considerations, they will include a set of banner ads in their WML content. This, then, takes time to download to the microbrowser, consumer processing bandwidth and memory, and consumes valuable display area on the microbrowser. As the commercial paradigm is different in wireless web browsing (connection time is usually charged by the minute rather than a flat-rate per month in regular web browsing), an ad which takes a long time to download will cause a negative consumer reaction as it uses his or her “minutes” and results in increased cost for services for the user.
Also consider that most of these types of microbrowsers are battery-driven in order to provide mobility to the user. As each of these advertisements are downloaded, displayed and/or animated, they incrementally increase battery energy consumption through increased processor and resource (display, memory) usage. This, too, will cause a negative consumer reaction because they are aware that time “wasted” downloading and displaying such adds eventually results in an earlier “battery low” warning.
As such, the current technology allows the proprietor of a web site to customize the web site content to optimize performance for browsing by a microbrowser, but the user is left with no control or method for selecting which web content objects to download or to omit from a delivered page in order to minimize download times (and connection costs), to maximize display usefulness, and to maximize battery life.
There are methods in the art for “content negotiation”, which are well known and which could possibly be applied to this problem. However, these methods generally include more messages or “handshakes” (e.g., client-server interaction steps) to negotiate which content is available and which content to deliver, making the protocol even more resource-intensive than a nonnegotiable protocol. For example, the Internet Engineering Task Force's (IETF) 1998 Request for Comments number 2295 (RFC2295) proposes a process wherein multiple “variants” of content are stored on a server, and a list of available variants and their characteristics is delivered the client or browser device. The client or browser device may then select which variant to download. Not only does this increase the number of messages sent back and forth to communicate the list and to select the variants, it increases substantially the operating burden of the web site to include maintenance, testing, etc., of all the variants. Another IETF Request for Comments, RFC 2703, acknowledges the need for a protocol-independent content negotiation technology, but merely provides and framework of problems to be solved and does not provide a solution to the problem.
So, to employ content negotiation method to a protocol such as WAP would necessarily increase the resource requirements (processing power, communications bandwidth, memory consumption) above and beyond the requirements of the current WAP protocol. As the current WAP protocol is of marginal performance in some situations already, a proposal to increase its resource requirements to add performance negotiability would not be well-received in the industry.
Some available products for browsers allow a user to configure a “shield” from advertising objects, such as Norton's Internet Security software package. These software products typically run in the “background” on a personal computer, examining all data objects being received by the browser software. Any objects which appear to be “user deselected” object types are not fully downloaded, and are not displayed. These types of products, though, due to their very nature of their operation, require significant “extra” processor bandwidth and memory so that their “background” operation does not noticeably depreciate the performance of the normal web browser, and as such, are not suitable for use on a microbrowser.
Therefore, there is a need in the art for a system and method to allow a user to control or select which web objects are downloaded to a microbrowser without adding significant resource requirements to the microbrowser's execution or use, including it's display area, processing bandwidth, communications bandwidth, and memory consumption.
Additionally, there is a need in the art for this system and method to be easily deployable throughout an existing network to avoid the difficult or expensive retrofitting of microbrowser devices with special hardware or software.
Further, there is a need in the art for this system and method to be compatible with other technologies already present in the wireless web environment, including protocols (WAP, i-Mode, etc.) and object formats (WML, HTML, etc.).